Skip to content

Add support for Qualcomm MBG driver and ADC5 Gen3 channels#664

Open
raryan-qcom wants to merge 10 commits into
qualcomm-linux:qcom-6.18.yfrom
raryan-qcom:for-mbgthermal
Open

Add support for Qualcomm MBG driver and ADC5 Gen3 channels#664
raryan-qcom wants to merge 10 commits into
qualcomm-linux:qcom-6.18.yfrom
raryan-qcom:for-mbgthermal

Conversation

@raryan-qcom

@raryan-qcom raryan-qcom commented Jun 5, 2026

Copy link
Copy Markdown

This series adds support for Qualcomm MBG thermal monitoring and ADc channels.

Adding support for:

DT bindings for the MBG thermal monitor peripheral on PM8775
A new Qualcomm SPMI MBG thermal monitor driver under drivers/thermal/qcom/
The driver monitors die temperature alarms, handles the MBG interrupt on
upper-threshold violation, reads the fault status, and reports events to the
thermal framework.
Link: https://lore.kernel.org/all/20260601-spmi-mbg-driver-v1-0-b4892b55a17f@oss.qualcomm.com/
Link: https://lore.kernel.org/all/20260430-adc5_gen3_dt-v1-0-ab2bb40fd490@oss.qualcomm.com/
Link: https://lore.kernel.org/all/20260526-gen3_adc_tm-v2-0-702fbac919ac@oss.qualcomm.com/
Link: https://lore.kernel.org/all/20260130115421.2197892-1-jishnu.prakash@oss.qualcomm.com/
CRs-Fixed: 3828090, 3871464, 3947936, 3974949
RFC patch: https://lore.kernel.org/all/qq3cggafexwpdrv46eqijxfmrdbqusl2vpbuswqmcvshqueaiw@r4mrmap4nwkt/

qli-2.0 GA Critical Fix

@raryan-qcom raryan-qcom requested review from a team, ndechesne, sgaud-quic and yijiyang June 5, 2026 11:18
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests.

1 similar comment
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No Change Task Found

No associated change tasks found for CR 4561965 on any of the following entities:

Entities:

  • kernel.qli.2.0

CR: 4561965

Please ensure the CR has a change task associated with at least one of the entities for this branch.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4561980 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 4561980
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

@raryan-qcom

raryan-qcom commented Jun 5, 2026

Copy link
Copy Markdown
Author

No checkpatch error were found. I ran the checkpatch on MakeFile also but it already had 74 warning even though we added one change. One mutex structure is added without comments, so checker is failing, requestion override now, in next time we will fix that. Please find below results of checkpatch for reference-

(venv) raryan@hu-raryan-hyd:/local/mnt/workspace/raryan/qli2.0/kernel$ ./checkpatch.pl --no-tree -g 12a244b

No typos will be found - file '/local/mnt/workspace/raryan/qli2.0/kernel/spelling.txt': No such file or directory
No structs that should be const will be found - file '/local/mnt/workspace/raryan/qli2.0/kernel/const_structs.checkpatch': No such file or directory
WARNING: Possible unwrapped commit description (prefer a maximum 75 chars per line)
#6:
Add bindings for the Qualcomm MBG (Master Bandgap) temperature alarm peripheral

WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#37:
new file mode 100644

total: 0 errors, 2 warnings, 82 lines checked

NOTE: For some of the reported defects, checkpatch may be able to
mechanically convert to the typical style using --fix or --fix-inplace.

Commit 12a244b ("FROMLIST: dt-bindings: thermal: Add Qualcomm MBG thermal monitor support") has style problems, please review.

NOTE: If any of the errors are false positives, please report
them to the maintainer, see CHECKPATCH in MAINTAINERS.
(venv) raryan@hu-raryan-hyd:/local/mnt/workspace/raryan/qli2.0/kernel$ ./checkpatch.pl --no-tree -g 6a1751c
No typos will be found - file '/local/mnt/workspace/raryan/qli2.0/kernel/spelling.txt': No such file or directory
No structs that should be const will be found - file '/local/mnt/workspace/raryan/qli2.0/kernel/const_structs.checkpatch': No such file or directory
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#55:
new file mode 100644

total: 0 errors, 1 warnings, 277 lines checked

NOTE: For some of the reported defects, checkpatch may be able to
mechanically convert to the typical style using --fix or --fix-inplace.

Commit 6a1751c ("FROMLIST: thermal: qcom: Add support for Qualcomm MBG thermal monitoring") has style problems, please review.

NOTE: If any of the errors are false positives, please report
them to the maintainer, see CHECKPATCH in MAINTAINERS.
(venv) raryan@hu-raryan-hyd:/local/mnt/workspace/raryan/qli2.0/kernel$ ./checkpatch.pl -f drivers/thermal/q
qcom/ qoriq_thermal.c
(venv) raryan@hu-raryan-hyd:/local/mnt/workspace/raryan/qli2.0/kernel$ ./checkpatch.pl -f drivers/thermal/q
qcom/ qoriq_thermal.c
(venv) raryan@hu-raryan-hyd:/local/mnt/workspace/raryan/qli2.0/kernel$ ./checkpatch.pl -f drivers/thermal/qcom/qcom-spmi-mbg-tm.c
No typos will be found - file '/local/mnt/workspace/raryan/qli2.0/kernel/spelling.txt': No such file or directory
No structs that should be const will be found - file '/local/mnt/workspace/raryan/qli2.0/kernel/const_structs.checkpatch': No such file or directory
total: 0 errors, 0 warnings, 254 lines checked

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 4561980 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 4561980
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No Change Task Found

No associated change tasks found for CR 3828090 on any of the following entities:

Entities:

  • kernel.qli.2.0

CR: 3828090

Please ensure the CR has a change task associated with at least one of the entities for this branch.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 3828090 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 3828090
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 3828090 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 3828090
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

1 similar comment
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 3828090 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 3828090
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

@raryan-qcom raryan-qcom changed the title FROMLIST: thermal: qcom: Add support for Qualcomm MBG thermal monitoring qli-2.0 GA Critical Fix: FROMLIST: thermal: qcom: Add support for Qualcomm MBG thermal monitoring Jun 10, 2026
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 3828090 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 3828090
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

@raryan-qcom raryan-qcom changed the title qli-2.0 GA Critical Fix: FROMLIST: thermal: qcom: Add support for Qualcomm MBG thermal monitoring FROMLIST: thermal: qcom: Add support for Qualcomm MBG thermal monitoring Jun 10, 2026
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 3828090 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 3828090
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

@raryan-qcom raryan-qcom changed the title FROMLIST: thermal: qcom: Add support for Qualcomm MBG thermal monitoring Add support for Qualcomm MBG driver and ADC5 Gen3 channels Jun 10, 2026
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 3828090 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 3828090
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 3828090 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 3828090
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

1 similar comment
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 3828090 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 3828090
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

@qlijarvis

Copy link
Copy Markdown

PR #664 — validate-patch

PR: #664

Verdict Issues Detailed Report
0 Full report

Final Summary

  1. Lore link present: Yes — but all links are invalid (404, future dates)
  2. Lore link matches PR commits: Cannot verify — upstream patches don't exist
  3. Upstream patch status: Not upstream — FROMLIST patches with invalid lore references
  4. PR present in qcom-next: Not checked — validation blocked by invalid upstream references
Verdict: ❌ — click to expand

🔍 Patch Validation

PR: #664
Upstream commit: Multiple FROMLIST patches (not yet upstream)
Verdict: ❌ FAIL

Commit Message

Check Status Note
Subject matches upstream ⚠️ Cannot verify - lore links point to future dates (2026) and return 404
Body preserves rationale Commit bodies present with technical rationale
Fixes tag present/correct N/A No Fixes tags (new features, not bug fixes)
Authorship preserved Multiple authorship issues (see below)
Backport note (if applicable) N/A FROMLIST patches, not backports

Critical Issues

1. Lore Links Are Invalid (All 10 commits)

  • All lore.kernel.org links reference future dates: April-June 2026
  • Links return 404 - patches don't exist on lore.kernel.org
  • These appear to be placeholder/test links for patches not yet posted upstream
  • Impact: Cannot verify diff faithfulness to upstream

2. Sign-off Chain Violations

Patch Issue Details
01 ⚠️ Co-developed-by appears AFTER author's Signed-off-by (should be before)
02 ⚠️ Co-developed-by appears AFTER author's Signed-off-by (should be before)
08 TWO Link tags - suggests squashed commits or malformed patch

3. Authorship Concerns

Patch Author Sign-offs Issue
04 Ayyagari Ushasreevalli Ayyagari + Jishnu ⚠️ Second SoB likely committer, acceptable
05 Ayyagari Ushasreevalli Ayyagari + Jishnu ⚠️ Second SoB likely committer, acceptable

Diff

Cannot validate diff faithfulness - upstream patches don't exist on lore.kernel.org yet.

FROMLIST Prefix Usage

Patches Prefix Status
01-05 FROMLIST: ✅ Correct
06-10 (none) ⚠️ Inconsistent - should also use FROMLIST if not upstream

Issues

  1. CRITICAL: All lore.kernel.org links are invalid (404) - patches reference future dates and don't exist upstream
  2. CRITICAL: Patch 08 has duplicate Link tags - suggests improper squashing or malformed commit
  3. WARNING: Co-developed-by tags appear after author Signed-off-by in patches 01-02 (should appear before, per kernel conventions)
  4. WARNING: Inconsistent FROMLIST prefix usage - patches 06-10 lack FROMLIST but also reference lore links
  5. INFO: Cannot verify diff correctness against upstream - no upstream patches exist to compare

Verdict

REJECT - Cannot validate patch correctness due to:

  1. Invalid lore links (all patches)
  2. Malformed commit in patch 08 (duplicate Link tags)
  3. Sign-off chain violations
  4. Unable to verify diff faithfulness to upstream

Recommendations

  1. Fix lore links: Either post patches to lore.kernel.org first, or remove Link tags if patches are vendor-only
  2. Fix patch 08: Investigate why it has two Link tags - may need to be split into two commits
  3. Fix sign-off order: Move Co-developed-by tags to appear before author's Signed-off-by
  4. Consistent FROMLIST usage: Add FROMLIST prefix to patches 06-10 if they're also not upstream

Final Summary

  1. Lore link present: Yes — but all links are invalid (404, future dates)
  2. Lore link matches PR commits: Cannot verify — upstream patches don't exist
  3. Upstream patch status: Not upstream — FROMLIST patches with invalid lore references
  4. PR present in qcom-next: Not checked — validation blocked by invalid upstream references

@qlijarvis

Copy link
Copy Markdown

PR #664 — checker-log-analyzer

PR: #664
Checker run: https://github.com/qualcomm-linux/kernel-config/actions/runs/27279802091

Checker Result Summary
Checker Result Summary
checkpatch 2 warnings, 3 checks (commit message line length, missing mutex comments, macro argument reuse)
dt-binding-check All binding schemas validated successfully
dtb-check All DTB checks passed
sparse-check No sparse warnings introduced
check-uapi-headers No UAPI header issues
check-patch-compliance 6 commits missing required prefix (FROMLIST:/UPSTREAM:), 1 commit differs from upstream
tag-check N/A Not applicable for this PR
qcom-next-check ⚠️ 5 commits without FROMLIST:/UPSTREAM: prefix

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #664 - Add Qualcomm MBG thermal monitoring and PMIC5 Gen3 ADC support
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/27279802091

Checker Result Summary
checkpatch 2 warnings, 3 checks (commit message line length, missing mutex comments, macro argument reuse)
dt-binding-check All binding schemas validated successfully
dtb-check All DTB checks passed
sparse-check No sparse warnings introduced
check-uapi-headers No UAPI header issues
check-patch-compliance 6 commits missing required prefix (FROMLIST:/UPSTREAM:), 1 commit differs from upstream
tag-check N/A Not applicable for this PR
qcom-next-check ⚠️ 5 commits without FROMLIST:/UPSTREAM: prefix

❌ checkpatch

Root cause: Multiple commits have checkpatch style violations including long commit message lines, missing mutex documentation, and macro argument reuse.

Failure details:

Commit 2e0644d ("FROMLIST: dt-bindings: thermal: Add Qualcomm MBG thermal monitor support"):

WARNING: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#7: 
Add bindings for the Qualcomm MBG (Master Bandgap) temperature alarm peripheral

Commit d844d53 ("FROMLIST: thermal: qcom: Add support for Qualcomm MBG thermal monitoring"):

CHECK: struct mutex definition without comment
#108: FILE: drivers/thermal/qcom/qcom-spmi-mbg-tm.c:47:
+	struct mutex                    lock;

Commit 5426fd9 ("iio: adc: Add support for QCOM PMIC5 Gen3 ADC"):

CHECK: struct mutex definition without comment
#161: FILE: drivers/iio/adc/qcom-spmi-adc5-gen3.c:70:
+	struct mutex lock;

CHECK: Macro argument reuse 'x' - possible side-effects?
#1037: FILE: include/linux/iio/adc/qcom-adc5-gen3-common.h:80:
+#define ADC5_GEN3_V_CHAN(x)		\
+	(FIELD_PREP(ADC5_GEN3_VIRTUAL_SID_MASK, (x).sid) | (x).channel)

Commit 033c9cf ("iio: adc: qcom-spmi-adc5-gen3: Share SDAM0 IRQ with ADC_TM auxiliary driver"):

WARNING: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#12: 
At present, this interrupt is handled only in the ISR in the main ADC driver.

Fix:

  1. Long commit message lines: Wrap commit message body lines to 75 characters or less. Edit the commit messages for commits 2e0644d and 033c9cf.

  2. Missing mutex comments: Add documentation comments above the mutex definitions explaining what the mutex protects:

    • In drivers/thermal/qcom/qcom-spmi-mbg-tm.c:47: Add comment like /* Protects device state and register access */
    • In drivers/iio/adc/qcom-spmi-adc5-gen3.c:70: Add comment like /* Protects ADC conversion and channel access */
  3. Macro argument reuse: The macro ADC5_GEN3_V_CHAN(x) uses x twice. While this is a minor issue for struct member access, consider evaluating x once if it could be a complex expression, or document that it should only be used with simple struct arguments.

Reproduce locally:

./scripts/checkpatch.pl --strict --summary-file --ignore FILE_PATH_CHANGES --git e74f856916e2b7e9ff337fd01fda068a9d46955c..b7271b7a53d47347c5c87235ef23471ac78fe34e

❌ check-patch-compliance

Root cause: Six commits (patches 6-10) are missing the required FROMLIST: or UPSTREAM: prefix in their subject lines, and one commit (patch 4) has content that differs from its linked upstream patch.

Failure details:

Missing prefix violations:

Checking commit: dt-bindings: iio: adc: Split out QCOM VADC channel properties
Commit summary does not start with a required prefix

Checking commit: dt-bindings: iio: adc: Add support for QCOM PMIC5 Gen3 ADC
Commit summary does not start with a required prefix

Checking commit: iio: adc: Add support for QCOM PMIC5 Gen3 ADC
Commit summary does not start with a required prefix

Checking commit: iio: adc: qcom-spmi-adc5-gen3: Share SDAM0 IRQ with ADC_TM auxiliary driver
Commit summary does not start with a required prefix

Checking commit: thermal: qcom: add support for PMIC5 Gen3 ADC thermal monitoring
Commit summary does not start with a required prefix

Content mismatch:

Checking commit: FROMLIST: arm64: dts: qcom: lemans-pmics: Add ADC support for PMM8654au
Change is different from the one mentioned in Link

Fix:

  1. Add required prefixes to commits 6-10. Each commit subject must start with either:

    • FROMLIST: if the patch has been posted to an upstream mailing list but not yet merged
    • UPSTREAM: if the patch has been merged into an upstream tree (mainline, linux-next, or subsystem tree)
    • BACKPORT: if backporting from a newer kernel version

    For example:

    • dt-bindings: iio: adc: Split out QCOM VADC channel propertiesFROMLIST: dt-bindings: iio: adc: Split out QCOM VADC channel properties
    • iio: adc: Add support for QCOM PMIC5 Gen3 ADCFROMLIST: iio: adc: Add support for QCOM PMIC5 Gen3 ADC
  2. Fix content mismatch in commit "FROMLIST: arm64: dts: qcom: lemans-pmics: Add ADC support for PMM8654au":

    • The patch content differs from what was posted in the Link tag
    • Either update the patch to match the upstream version exactly, or
    • If intentional changes were made, document them in the commit message and consider using FROMLIST: [PATCH vX] notation

Reproduce locally:

# Check individual commits for compliance
git log --oneline e74f856916e2b7e9ff337fd01fda068a9d46955c..8d44291a4ee2af8a5fe310b8e129f637049cd4cc

# Verify each commit has proper prefix and matches upstream

Verdict

2 blockers must be fixed before merge:

  1. check-patch-compliance failures: 6 commits need FROMLIST:/UPSTREAM: prefix added to subject lines, and 1 commit needs content synchronized with its upstream Link or the discrepancy explained.

  2. checkpatch style issues: While technically non-blocking (warnings/checks, not errors), these should be addressed:

    • Wrap 2 commit message lines to ≤75 characters
    • Add documentation comments for 2 mutex definitions
    • Consider fixing or documenting the macro argument reuse

Recommended action: Rebase the PR to fix commit messages (add prefixes, wrap long lines, add mutex comments), then force-push to re-trigger CI.

Add bindings for the Qualcomm MBG (Master Bandgap) temperature alarm
peripheral found on the PM8775 PMIC. Unlike the existing SPMI temp alarm
peripheral,the MBG peripheral supports both hot and cold threshold
monitoring across two programmable levels (LVL1 and LVL2), with interrupt
status reported via a fault status register over SPMI.

Link: https://lore.kernel.org/all/20260601-spmi-mbg-driver-v1-1-b4892b55a17f@oss.qualcomm.com/
Signed-off-by: Satya Priya Kakitapalli <quic_skakitap@quicinc.com>
Co-developed-by: Sachin Gupta <sachin.gupta@oss.qualcomm.com>
Signed-off-by: Sachin Gupta <sachin.gupta@oss.qualcomm.com>

@shashim-quic shashim-quic left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dt-bindings: iio: adc: Split out QCOM VADC channel properties

prefix all commits with valid tags (FROMLIST etc.)

Add driver for the Qualcomm MBG thermal monitoring device. It monitors
the die temperature, and when there is a level 1 upper threshold
violation, it receives an interrupt over spmi. The driver reads
the fault status register and notifies thermal accordingly.

Link: https://lore.kernel.org/all/20260601-spmi-mbg-driver-v1-2-b4892b55a17f@oss.qualcomm.com/
Signed-off-by: Satya Priya Kakitapalli <quic_skakitap@quicinc.com>
Co-developed-by: Sachin Gupta <sachin.gupta@oss.qualcomm.com>
Signed-off-by: Sachin Gupta <sachin.gupta@oss.qualcomm.com>
jprakash-qc and others added 8 commits June 10, 2026 20:03
Add macro definitions for virtual channels (combination of ADC channel
number and PMIC SID number), to be used in devicetree by clients of ADC5
GEN3 device and in the "reg" property of ADC channels.

Link: https://lore.kernel.org/all/20260430-adc5_gen3_dt-v1-1-ab2bb40fd490@oss.qualcomm.com/
Signed-off-by: Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
Add ADC nodes for the four PMM8654au PMICs (pmm8654au_0 through
pmm8654au_3) on the Lemans platform.

Each ADC node exposes the following ADC channels:
- DIE_TEMP: PMIC die temperature channel
- VPH_PWR: Battery/supply voltage channel

Also add the io-channels and io-channel-names properties under
the temp-alarm nodes so that they can get temperature reading
from the ADC die_temp channels.

Link: https://lore.kernel.org/all/20260430-adc5_gen3_dt-v1-2-ab2bb40fd490@oss.qualcomm.com/
Signed-off-by: Ayyagari Ushasreevalli <aushasre@qti.qualcomm.com>
Signed-off-by: Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
Add ADC nodes for PMM8620AU PMIC instances (SID 0 and SID 2)
present on the Monaco platform.

Each ADC node exposes the following ADC channels:
 - DIE_TEMP: PMIC die temperature channel
 - VPH_PWR: Battery/supply voltage channel

Link: https://lore.kernel.org/all/20260430-adc5_gen3_dt-v1-3-ab2bb40fd490@oss.qualcomm.com/
Signed-off-by: Ayyagari Ushasreevalli <aushasre@qti.qualcomm.com>
Signed-off-by: Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
Split out the common channel properties for QCOM VADC devices into a
separate file so that it can be included as a reference for devices
using them. This will be needed for the upcoming ADC5 Gen3 binding
support patch, as ADC5 Gen3 also uses all of these common properties.

Link: https://lore.kernel.org/all/20260130115421.2197892-2-jishnu.prakash@oss.qualcomm.com/
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
For the PMIC5-Gen3 type PMICs, ADC peripheral is present in HW for the
following PMICs: PMK8550, PM8550, PM8550B and PM8550VX PMICs.

It is similar to PMIC5-Gen2, with SW communication to ADCs on all PMICs
going through PBS(Programmable Boot Sequence) firmware through a single
register interface. This interface is implemented on SDAM (Shared
Direct Access Memory) peripherals on the master PMIC PMK8550 rather
than a dedicated ADC peripheral.

Add documentation for PMIC5 Gen3 ADC and update SPMI PMIC bindings to
allow ADC5 Gen3 as adc@ subnode.

Link: https://lore.kernel.org/all/20260130115421.2197892-3-jishnu.prakash@oss.qualcomm.com/
Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
Acked-by: Lee Jones <lee@kernel.org>
The ADC architecture on PMIC5 Gen3 is similar to that on PMIC5 Gen2,
with all SW communication to ADC going through PMK8550 which
communicates with other PMICs through PBS.

One major difference is that the register interface used here is that
of an SDAM (Shared Direct Access Memory) peripheral present on PMK8550.
There may be more than one SDAM used for ADC5 Gen3 and each has eight
channels, which may be used for either immediate reads (same functionality
as previous PMIC5 and PMIC5 Gen2 ADC peripherals) or recurring measurements
(same as ADC_TM functionality).

By convention, we reserve the first channel of the first SDAM for all
immediate reads and use the remaining channels across all SDAMs for
ADC_TM monitoring functionality.

Add support for PMIC5 Gen3 ADC driver for immediate read functionality.
ADC_TM is implemented as an auxiliary thermal driver under this ADC
driver.

Link: https://lore.kernel.org/all/20260130115421.2197892-4-jishnu.prakash@oss.qualcomm.com/
Signed-off-by: Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
Link: https://lore.kernel.org/all/20260130115421.2197892-5-jishnu.prakash@oss.qualcomm.com/
…auxiliary driver

The SDAM0 IRQ can be triggered for both EOC (end of conversion) events for
immediate ADC reads done in this driver and for threshold violation events,
based on ADC_TM thresholds configured from the auxiliary ADC_TM driver on
TM channels on the first SDAM.

At present, this interrupt is handled only in the ISR in the main ADC
driver.When the ISR is triggered for an ADC_TM event, this driver notifies
the ADC_TM driver by calling a notifier callback exposed from it for this
purpose.

To simplify the interrupt handling in both drivers, share the interrupt
between the drivers. With this, ADC_TM interrupts on SDAM0 will be handled
directly in the ADC_TM driver, so remove the notifier callback and all TM
interrupt handling in the main ADC ISR.

Link: https://lore.kernel.org/all/20260526-gen3_adc_tm-v2-1-702fbac919ac@oss.qualcomm.com/
Signed-off-by: Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
Reviewed-by: Jonathan Cameron <jic23@kernel.org>
…oring

Add support for ADC_TM part of PMIC5 Gen3.

This is an auxiliary driver under the Gen3 ADC driver, which implements the
threshold setting and interrupt generating functionalities of QCOM ADC_TM
drivers, used to support thermal trip points.

Link: https://lore.kernel.org/all/20260526-gen3_adc_tm-v2-2-702fbac919ac@oss.qualcomm.com/
Signed-off-by: Jishnu Prakash <jishnu.prakash@oss.qualcomm.com>
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 3828090 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 3828090
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

@qcomlnxci qcomlnxci requested a review from a team June 10, 2026 15:06
@raryan-qcom

raryan-qcom commented Jun 10, 2026

Copy link
Copy Markdown
Author

dt-bindings: iio: adc: Split out QCOM VADC channel properties

prefix all commits with valid tags (FROMLIST etc.)

Done. Also I have put every CR in DevComplete still the bot is showing merge failed.

@raryan-qcom raryan-qcom requested a review from shashim-quic June 10, 2026 15:22
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: CR Not Eligible for Merge

CR 3828090 is not eligible for merge.

The parent software image for kernel.qli.2.0 is not development complete.

Entity: kernel.qli.2.0
CR: 3828090
Reason: CR_CANNOT_MERGE

Please ensure the CR passes both CCT (ComponentChangeTasks) and ICT (Integration Change Tasks) validations.

@sgaud-quic

Copy link
Copy Markdown
Contributor

dt-bindings: iio: adc: Split out QCOM VADC channel properties

prefix all commits with valid tags (FROMLIST etc.)

Done. Also I have put every CR in DevComplete still the bot is showing merge failed.

Please check the message from bot :

The parent software image for kernel.qli.2.0 is not development complete.

Parent of kernel.qli.2.0 needs to be in dev complete state.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants